<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>

</html>
<script>
    
    let arr=[3,4]
    let m = new Map([
        [1, 2],
        ["a", "b"],
        [null, undefined],
        [[1, 2], { name: 'zs' }],
        [arr,{name:"ls"}]
    ])


// size  获取Map的长度（有几组数据）
console.log(m.size);//4


// set(key,val)  添加一条数据
m.set(function(){},"函数")
console.log(m);
// {1 => 2, 'a' => 'b', null => undefined, Array(2) => {…}, ƒ => '函数'}


// get(key)  根据key获取val
console.log(m.get(null));//undefined
console.log(m.get(1));//2
console.log(m.get([1, 2]));//undefined 负责数据类型，需要考虑内存地址问题
console.log(m.get(arr));//{name: 'ls'}


// has(key)  是否存在key
console.log(m.has(arr));//true
console.log(m.has([1,2]));//false  内存地址不同


// delete(key) 删除某条数据
m.delete(arr)
console.log(m);


// clear() 清空所有数据
// m.clear()
// console.log(m);//Map(0) {size: 0}


// forEach  map也可以使用forEach
m.forEach(function(item,index){
    // item值
    // index键
    console.log(item,index);
})



</script>